#include<stdio.h>
#include<string.h>
#include<math.h>

void order(char a[],int n){
	int i=0,kg=0,t,j;
	for(i=0;i<n-1;i++){
		kg=1;
		for(j=0;j<n-1-i;j++){
			if(a[j]>a[j+1]){
				t=a[j];
				a[j]=a[j+1];
				a[j+1]=t;
				kg=0;
			}
		}
		if(kg==1) break;
	}
}
int main()
{
	int flag=0,sign,key,n,t,space=0;
	char num[22]={'\0'},c[22]={'\0'},d[22]={'\0'};
	gets(num);
	n=strlen(num);
	for(sign=n-1;sign>=0;sign--)
	{
		key=(int)num[sign];
		t=(key-48)*2%10;
		if(flag==1) t++;
		flag=0;
		if(2*(key-48)>=10) flag=1;
		c[sign]=t+48;
		d[sign]=t+48;
	}
	if(num[0]>='5') space=1;
	order(num,n);
	order(c,n);
	key=0;
	for(sign=0;sign<n;sign++)
	{
		if(num[sign]!=c[sign])
		{
			key=1;
			break;
		}
	}
	if(key==1) printf("No\n");
	else printf("Yes\n");
	if(space==1) printf("1");
	for(sign=0;sign<n;sign++)
	{
		putchar(d[sign]);
	}
	return 0;
}
